home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Leser 15 / Amiga Plus Leser CD 15.iso / Tools / Development / yacas_alg / yacas_morphos / share / yacas / include / numbers.h < prev    next >
Encoding:
C/C++ Source or Header  |  2002-03-13  |  4.2 KB  |  104 lines

  1.  
  2. #ifndef __numbers_h__
  3. #define __numbers_h__
  4.  
  5. #include "lispenvironment.h"
  6. #include "yacasbase.h"
  7.  
  8. /// Create a internal number object from an ascii string.
  9. void* AsciiToNumber(LispCharPtr aString,LispInt aPrecision);
  10.  
  11. /// Convert from internal number format to ascii format
  12. LispStringPtr NumberToAscii(void* aNumber,LispHashTable& aHashTable,
  13.                            LispInt aBase);
  14.  
  15. /// Whether the numeric library supports 1.0E-10 and such.
  16. LispInt NumericSupportForMantissa();
  17.  
  18. /// Numeric library name
  19. const LispCharPtr NumericLibraryName();
  20.  
  21. /// Copy a number class
  22. void* NumberCopy(void* aOriginal);
  23.  
  24. /// Delete a number object.
  25. void NumberDestroy(void* aNumber);
  26.  
  27.  
  28. LispStringPtr GcdInteger(LispCharPtr int1, LispCharPtr int2,
  29.                          LispHashTable& aHashTable);
  30.  
  31. LispStringPtr MultiplyFloat(LispCharPtr int1, LispCharPtr int2,
  32.                             LispHashTable& aHashTable,LispInt aPrecision);
  33. LispStringPtr AddFloat(LispCharPtr int1, LispCharPtr int2,
  34.                        LispHashTable& aHashTable,LispInt aPrecision);
  35. LispStringPtr PlusFloat(LispCharPtr int1,LispHashTable& aHashTable,LispInt aPrecision);
  36. LispStringPtr SubtractFloat(LispCharPtr int1, LispCharPtr int2,
  37.                             LispHashTable& aHashTable,LispInt aPrecision);
  38. LispStringPtr NegateFloat(LispCharPtr int1, LispHashTable& aHashTable,LispInt aPrecision);
  39. LispStringPtr DivideFloat(LispCharPtr int1, LispCharPtr int2,
  40.                           LispHashTable& aHashTable,LispInt aPrecision);
  41. LispStringPtr PowerFloat(LispCharPtr int1, LispCharPtr int2,
  42.                          LispHashTable& aHashTable,LispInt aPrecision);
  43.  
  44. LispStringPtr SinFloat(LispCharPtr int1, LispHashTable& aHashTable,LispInt aPrecision);
  45. LispStringPtr CosFloat(LispCharPtr int1, LispHashTable& aHashTable,LispInt aPrecision);
  46. LispStringPtr TanFloat(LispCharPtr int1, LispHashTable& aHashTable,LispInt aPrecision);
  47. LispStringPtr ArcSinFloat(LispCharPtr int1, LispHashTable& aHashTable,LispInt aPrecision);
  48. LispStringPtr ArcCosFloat(LispCharPtr int1, LispHashTable& aHashTable,LispInt aPrecision);
  49. LispStringPtr ArcTanFloat(LispCharPtr int1, LispHashTable& aHashTable,LispInt aPrecision);
  50. LispStringPtr ExpFloat(LispCharPtr int1, LispHashTable& aHashTable,LispInt aPrecision);
  51. LispStringPtr LnFloat(LispCharPtr int1, LispHashTable& aHashTable,LispInt aPrecision);
  52.  
  53. LispStringPtr SqrtFloat(LispCharPtr int1, LispHashTable& aHashTable,LispInt aPrecision);
  54. LispStringPtr AbsFloat( LispCharPtr int1, LispHashTable& aHashTable,LispInt aPrecision);
  55.  
  56. LispBoolean GreaterThan(LispCharPtr int1, LispCharPtr int2,
  57.                        LispHashTable& aHashTable,LispInt aPrecision);
  58. LispBoolean LessThan(LispCharPtr int1, LispCharPtr int2,
  59.                        LispHashTable& aHashTable,LispInt aPrecision);
  60.  
  61. LispStringPtr ShiftLeft( LispCharPtr int1, LispCharPtr int2, LispHashTable& aHashTable,LispInt aPrecision);
  62. LispStringPtr ShiftRight( LispCharPtr int1, LispCharPtr int2, LispHashTable& aHashTable,LispInt aPrecision);
  63.  
  64. LispStringPtr FromBase( LispCharPtr int1, LispCharPtr int2, LispHashTable& aHashTable,
  65.                         LispInt aPrecision);
  66. LispStringPtr ToBase( LispCharPtr int1, LispCharPtr int2, LispHashTable& aHashTable,
  67.                       LispInt aPrecision);
  68.  
  69. LispStringPtr FloorFloat( LispCharPtr int1, LispHashTable& aHashTable,
  70.                         LispInt aPrecision);
  71. LispStringPtr CeilFloat( LispCharPtr int1, LispHashTable& aHashTable,
  72.                         LispInt aPrecision);
  73. LispStringPtr ModFloat( LispCharPtr int1, LispCharPtr int2, LispHashTable& aHashTable,
  74.                         LispInt aPrecision);
  75. LispStringPtr DivFloat( LispCharPtr int1, LispCharPtr int2, LispHashTable& aHashTable,
  76.                         LispInt aPrecision);
  77. LispStringPtr PiFloat( LispHashTable& aHashTable, LispInt aPrecision);
  78.  
  79. LispStringPtr BitAnd(LispCharPtr int1, LispCharPtr int2,
  80.                      LispHashTable& aHashTable,LispInt aPrecision);
  81. LispStringPtr BitOr(LispCharPtr int1, LispCharPtr int2,
  82.                      LispHashTable& aHashTable,LispInt aPrecision);
  83. LispStringPtr BitXor(LispCharPtr int1, LispCharPtr int2,
  84.                      LispHashTable& aHashTable,LispInt aPrecision);
  85.  
  86.  
  87. LispStringPtr LispFactorial(LispCharPtr int1, LispHashTable& aHashTable,LispInt aPrecision);
  88.  
  89.  
  90. #endif
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.